import Vue from 'vue'
import App from './App'
import router from './router'
import axios from 'axios'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import './styles/globle.css'
import VueClipBoard from 'vue-clipboard2'
import JsonViewer from 'vue-json-viewer'
import 'vue-json-viewer/style.css'
import formCreate from '@form-create/element-ui'


// 引入echarts
// import echarts from 'echarts'
var echarts = require('echarts');


const url = process.env.BASE_API;
axios.defaults.baseURL = '/test';
Vue.use(ElementUI);
Vue.use(VueClipBoard);
Vue.use(JsonViewer);
Vue.use(formCreate);

// 全局注册，之后可在其他组件中通过 this.$axios 发送数据

Vue.prototype.$axios=axios
Vue.config.productionTip = false
Vue.prototype.$echarts = echarts

Vue.config.productionTip = false
	//开发环境下，Vue 会提供很多警告来帮你对付常见的错误与陷阱。而在生产环境下，这些警告语句却没
	//有用，反而会增加应用的体积。此外，有些警告检查还有一些小的运行时开销，这在生产环境模式下是
	//可以避免的。(摘于官网说明) 大概意思应该就是，消息提示的环境配置，设置为开发环境或者生产环境
router.beforeEach((to,from,next) => {
	// 如果即将进入的路由对象是登录页，则进行跳转，否则验证是否携带accessToken,如果有，则进
	// 行跳转，没有，则不允许跳转
    if(to.path === "/"){
        next()
    }else{
        if (sessionStorage.getItem('accessToken')){
            next()
        } else {
            next("/")
        }
    }
})



/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})
